The present invention relates to a network storage system for performing processing according to an access request of a file unit (hereinafter simply written as an access request) from a client connected to a network.
A technique for increasing the operating speed of a conventional NAS (Network Attached Storage) uses a processor dispersed in function (which is a network processor, a file system processor and a disk processor respectively hereinafter abbreviated as NP, FSP and DP), and a cache memory communized between these processors. For example, this technique is shown in U.S. Pat. No. 5,163,131 (particularly, pp. 17 to 19 and FIG. 2).
In this literature, three processors are functionally dispersed and used. Processor utilization ratio is raised by performing the processing of the access request by the respective processors in parallel with each other in comparison with an SMP (Symmetric Multiprocessor) in which plural processors perform equal processing.
Further, the data movement between the processors and latency with respect to the processing of the access request can be reduced by sharing one cache memory in the plural processors and storing user data onto the cache memory. Here, the latency means a delay time taken until data are really transferred after the request of the data is made.
Further, the data movements between a memory of the NP and the cache memory shared by the plural processors, and between this cache memory and a storage device are made by a DMA (Direct Memory Access) so that the load of the processor is reduced. The DMA is to make the data movement without a CPU.
In this prior art, since the user data are stored to the cache memory and are processed, two data movements, i.e., the data movement between the memory of the NP and the cache memory, and the data movement between the cache memory and the storage device are required. In this case, when the data movement to the storage device is completed, a reply must be given to a client. Therefore, it is necessary to wait for the two data movements until the reply is given, thereby increasing the latency.
Further, since the data are stored onto the cache memory, there is a defect in that the data are lost when a failure is happened in a server (hereinafter abbreviated as a file server) for providing a file.